package com.awaken.content.models.dto;

// 导入Lombok注解，自动生成getter、setter等方法
import lombok.Data;
// 导入精确的十进制数类型，用于价格计算
import java.math.BigDecimal;
// 导入时间类
import java.time.LocalDateTime;

/**
 * 商品DTO类 - Data Transfer Object（数据传输对象）
 * 用于在服务之间传递商品数据，包含分类名称和卖家名称等关联信息
 * 这样前端就不需要再次查询分类和卖家信息了
 */
@Data  // Lombok注解：自动生成getter、setter、toString等方法
public class ProductDTO {
    // 商品ID
    private Long id;
    
    // 商品名称
    private String name;
    
    // 商品价格
    private BigDecimal price;
    
    // 商品库存
    private Integer stock;
    
    // 分类ID
    private Long categoryId;
    
    // 分类名称（通过关联查询获得，方便前端显示）
    private String categoryName;
    
    // 卖家ID
    private Long sellerId;
    
    // 卖家名称（通过关联查询获得，方便前端显示）
    private String sellerName;
    
    // 商品创建时间
    private LocalDateTime createTime;
} 